operation on functions